package com.example.badminton.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.badminton.entity.Booking;

import java.util.List;

public interface BookingService extends IService<Booking> {
    
    /**
     * 根据用户ID获取预订列表
     * @param userId 用户ID
     * @return 预订列表
     */
    List<Booking> getBookingsByUserId(Long userId);
    
    /**
     * 根据场地ID获取预订列表
     * @param courtId 场地ID
     * @return 预订列表
     */
    List<Booking> getBookingsByCourtId(Long courtId);

    /**
     * 查询所有球场在某天所有时间段的预定状态
     * @param date 日期字符串 yyyy-MM-dd
     * @return {courtId: {slot: 'free'|'booked'}}
     */
    java.util.Map<Long, java.util.Map<String, String>> getAvailabilityByDate(String date);
} 